1. Field of the Invention
The present invention relates to a host-based printing system and printing control method thereof.
2. Description of the Related Art
Host-based printing systems have been proposed in recent years. Generally used printers receive printing data from a host computer and convert the same into image data for printing, such as bit-mapped data whereas the host-based printers receive the bit-mapped data or compressed bit-mapped data created at a host computer. Generally, the image data output from the host computer is compressed. The host-based printer expands the received compressed image data and relays the resultant data to a printer engine. Because the host-based printer needs only perform data expansion, burden on the host-based printer is greatly relieved. This allow employing a CPU of low processing capability and/or a memory of small storage capacity in the host-based printer. As such, the host-based printers can be manufactured at low cost.
There are such printers that cannot temporarily stop during printing. Laser printers are an example of such printers. Such a printer has a buffer memory in which one page worth of image data is stored so that the supply of the image data to the printer will not be interrupted during printing. Some of the printers have a reprinting capability. When a printing error, such as a paper jam, occurs during printing, the printer can automatically reprint the page which was not produced as a result of the printing error. This reprinting can be achieved by using the one page worth of image data stored in the buffer memory of the printer.
However, provision of a buffer memory with one page worth of print data storing capability increases the cost of the printer. To lower the cost and provide a low-price product, a memory of small storage capacity is mounted in recent host-based printers. Because one page worth of image data cannot be stored in the buffer memory in such printers, reprinting of a page cannot be performed automatically when a printing error occurs but the operator has to operate the printer again to perform printing of the page.
In the host-based printing systems, the image data output from the host computer is stored temporarily in a buffer memory within the printer. With a page printer, image data is stored in the buffer memory until the end of the page, providing the page of image data is small enough to fit into the buffer memory, and then the printing unit is activated to print the page. If a page of image data is larger than the capacity of the buffer memory, however, the printing unit is activated when the buffer memory becomes full. Hereinafter, this method of starting to print a page before the end of the page has been transferred will be referred to as xe2x80x9cprinting on the fly.xe2x80x9d
When printing on the fly with a page printer, the buffer memory may become empty in the middle of a page if transferring of image data from the computer is slow, and the printer will be unable to print. This condition in which printing is impossible will hereinafter be referred to as xe2x80x9cprint overrun.xe2x80x9d
When an error occurs due to a paper jam, for example, while printing on the fly with such a page printer, the host computer stops outputting image data in the middle of a page. Then, after the jammed paper is removed and the printer is reset, the host computer will continue outputting the remaining image data in the page. However, data for the first part of the page was lost when the printer was reset. Thus, even if data for the latter part of the page is sent to the printer, the printer will be unable to process that data as specifications for data length, for example, will be missing, resulting in an illegal command error.
Sometimes an error recovery function is provided to resend image data from the host computer for a page in which an error occurred, but when print overrun occurs, the same error may recur due to relationships between the printer buffer capacity, the data size of one page, and the transfer speed from the host computer. For this reason, when an error recovery function is set in conventional host-based printing systems and a print overrun occurs, the same error occurs repeatedly, and the function is ineffective.
In view of the foregoing, it is an object of the present invention to provide a host-based printing system and a printing control method thereof capable of automatically reprinting a page that could not be printed as a result of a printing error regardless of the storage capacity of a buffer memory of a printer.
It is another object of the present invention to provide a host-based printing system and a printing control method thereof that can smoothly recover from a printing error.
To achieve the above and other objects, there is provided a printing control method of a host-based printing system that includes a host computer and a printer connected to the host computer, the printing control method including the steps of:
(a) creating, in the host computer, image data for printing;
(b) outputting the image data created in the host computer to the printer;
(c) printing, in the printer, the image data on a page basis;
(d) when a printing error occurs in the printer during the step (c) before the printing the image data for one page the printing error occurred in was completely output from the host computer to the printer, recovering the printing error, and thereafter outputting remaining image data for the one page to the printer; and
(e) discarding, in the printer, the remaining image data for the one page output from the host computer.
The method may further include the following steps:
(f) determining whether the printing error is of a recurring type or a nonrecurring type;
(g) when the determination made in step (f) indicates that the printing error is of the nonrecurring type, recovering the printing error, and thereafter resending to the printer the image data for the one page that the printing error occurred in instead of executing the step (d); and
(h) printing the image data resent by the host computer instead of executing the step (e).
The steps (d) and (e) are executed when the determination made in step (f) indicates that the printing error is of the recurring type.
The method may further include the following steps:
(i) resetting the printer before outputting the remaining image data for the one page to the printer.
The method may further include the following steps:
(j) executing the step (i) when the determination made in step (f) indicates that the printing error is of the recurring type;
(k) after executing the step (j), outputting the image data for a subsequent one page to the printer instead of executing the step (d); and
(l) printing the image data for the subsequent one page.
According to another aspect of the invention, there is provided a printing control method of a host-based printing system that includes a host computer and a printer connected to the host computer so as to be capable of performing a bi-directional communication therebetween, the printing control method including the steps of:
(a) creating, in the host computer, image data for printing;
(b) outputting the image data created in the host computer to the printer;
(c) printing, in the printer, the image data on a page basis;
(d) when a printing error occurs in the printer during the step (c) before the printing the image data for one page the printing error occurred in was completely output from the host computer to the printer, transmitting a reprint command from the printer to the host computer requesting to resend the image data for the one page the printing error occurred in, a part of the print data for the one page being left unprinted in the printer as a result of the printing error;
(e) clearing the part of the print data; and
(f) in response to the reprint command received from the printer, resending the image data for the one page the printing error occurred in to the printer.
The host computer retains the image data that has been sent to the printer so as to be capable of resending the image data. The method may further include the following steps:
(g) sending information regarding a page that has been successfully printed in the printer to the host computer; and
(h) discarding the print data retained by the host computer for the page that has been successfully printed in the printer.
According to still another aspect of the invention, there is provided a host-based printing system that includes: a host computer for creating image data for printing and transmitting the image data; a printer connected to the host computer for receiving and printing the image data on a page basis; output complete determination means for determining whether or not the image data for one page had been completely transmitted from the host computer when a printing error occurred; and discarding means for discarding a part of the image data for the one page which remains untransmitted from the host computer when the determination by the output complete determination means indicates that the image data for one page had not been completely transmitted. In this case, discharging the part of the image data is implemented after resetting the printer.
The discarding means is provided in the printer and discards the part of the image data after the part of the image data has been transmitted to the printer.
There may further be provided error recovery means for retransmitting the image data for the one page the printing error occurred in after the printer recovers from the printing error; printing error cause determination means for determining whether or not the printing error is of a type that will cause the same printing error to recur; and error recovery ignore means for disabling the error recovery means so that retransmitted image data is not printed by the printer when the determination by the printing error cause determination means indicates the printing error is of the type that will cause the same printing error to recur.
According to yet another aspect of the invention, there is provided a host-based printing system that includes: a host computer for creating image data for printing and transmitting the image data; a printer connected to the host computer for receiving and printing the image data on a page basis; printing error cause determination means for determining whether or not the printing error is of a type that will cause the same printing error to recur; and discarding means for discarding a part of the image data for the one page which remains untransmitted from the host computer when the determination by the printing error cause determination means indicates the printing error is of the type that will cause the same printing error to recur. Discharging the part of the image data is implemented after resetting the printer.
In this case also, the discarding means is provided in the printer and discards the part of the image data after the part of the image data has been transmitted to the printer.
According to further aspect of the present invention, there is provided a host-based printing system that includes: a host computer for creating image data for printing; a printer connected to the host computer for receiving and printing the image data on a page basis; output complete determination means for determining whether or not the image data for one page had been completely transmitted from the host computer when a printing error occurred; and retransmitting means for retransmitting the image data for the one page the printing error occurred in when the determination by the output complete determination means indicates that the image data for one page had not been completely transmitted, the image data being retransmitted after resetting the printer.
According to another aspect of the invention, there is provided a host-based printing system that includes: a host computer for creating image data for printing; a printer connected to the host computer for receiving and printing the image data on a page basis; printing error cause determination means for determining whether or not the printing error is of a type that will cause the same printing error to recur; and page skipping means for skipping the image data for the one page the printing error occurred in and transmitting the image data for a subsequent one page to the printer when the determination by the printing error cause determination means indicates the printing error is of the type that will cause the same printing error to recur. Transmitting the image data for the subsequent one page is implemented after resetting the printer.
According to still another aspect of the invention, there is provided a host-based printing system that includes: a host computer for creating image data and outputting the image data; a printer connected to the host computer for receiving and printing the image data on a page basis; and bi-directional communication lines for connecting the host computer to the printer so as to be capable of performing a bi-directional communication therebetween. The printer includes: print execution information output means for outputting print execution information to the host computer, the print execution information being representative of normally printed pages and print error pages; and data clear means for clearing, when a printing error occurred during printing the image data for one page, a part of the image data for the one page which remains unprinted as a result of the printing error. The host computer includes: image data retaining means for retaining the image data that has been output to the printer so as to repeatedly output to the printer; resending means for resending to the printer the image data for the one page that is indicated as a print error page in the print execution information; and discarding means for discarding the image data for a page that is retained in the image data retaining means and indicated as a normally printed page in the print execution information.
The printer may further include print results storing means for storing an accumulated number of printed pages and outputting the accumulated number of printed pages to the host computer. The host computer may further include printed pages specifying means for specifying a number of normally printed pages based on the accumulated number of printed pages output from the print results storing means before start of printing and an updated accumulated number of printed pages.
The host computer may further include output page managing means for managing a page whose image data has been output to the printer, and print error page specifying means for specifying print error pages based on the page managed by the output page managing means and the normally printed pages.
When the print error page specifying means specifies a print error page, the output page managing means indicates a page immediately preceding the print error page specified by the print error page specifying means.
According to yet further aspect of the invention, there is provided a host-based printing system that includes: a host computer for creating image data; a printer connected to the host computer for receiving and printing the image data on a page basis; image data retaining means for retaining the image data; start page managing means for managing a start page of the image data stored in the image data retaining means; and page managing means for managing an end page of the image data stored in the image data retaining means; output page managing means for managing an output page which has been sent to the printer; and output data specifying means for specifying the image data for a subsequent page to be sequentially output to the printer based on a relationship between the output page and the end page.
The start page managing means specifies the normally printed page based on information received from the printer and rewrites the start page based on the normally printed page specified by the start page managing means. The output page managing means specifies the print error page based on information received from the printer and rewrites the output page based on the print error page specified by the output page managing means.